put "go " & the id of this card & " of " & the name of this stack into cardID --This holds the card ID of the card you're at
-- The following ask boxes put the current month and year in them
ask "Please enter month:" with word 2 of the long date
put it into monthName
if it is empty then exit mouseUp
ask "Please enter the year:" with word 4 of the long date
put it into yearName
if it is empty then exit mouseUp
repeat while it < 1821 or it > 2100
ask "The year must be 1821 through 2100..." with yearName
put it into yearName
end repeat
repeat -- Verifies a correct month name has been entered
if monthName <> "January" then
if monthName <> "February" then
if monthName <> "March" then
if monthName <> "April" then
if monthName <> "May" then
if monthName <> "June" then
if monthName <> "July" then
if monthName <> "August" then
if monthName <> "September" then
if monthName <> "October" then
if monthName <> "November" then
if monthName <> "December" then
-- Obviously an incorrest month name
ask "Please check name of month..." with monthName
put it into monthName
next repeat --Loops again to verify
end if
end if
end if
end if
end if
end if
end if
end if
end if
end if
end if
end if
exit repeat
end repeat
lock screen
go to card monthName of stack calendar
repeat with theLine = 1 to 7 --Each line is a day of the week
if yearName is in line theLine of card field monthName then
put theLine into Count
exit repeat
end if
end repeat
if Count = 1 then go to card Sunday
if Count = 2 then go to card Monday
if Count = 3 then go to card Tuesday
if Count = 4 then go to card Wednesday
if Count = 5 then go to card Thursday
if Count = 6 then go to card Friday
if Count = 7 then go to card Saturday
put the short name of this card into cdholder
put field days into dayHold
go to card display --The card you will see
put dayHold into field days
put monthName into field month
put yearName into field year
hide field specials
hide field spclhedr
hide field bday
hide field evnt
--The next 2 ifs check for months with less than 31 days
if (monthName = "February") or (monthName = "April") or (monthName = "June") or (monthName = "September") or (monthName = "November") then
delete word "31" of field days
end if
if monthName = "February" then
delete word "30" of field days
if yearName mod 4 <> 0 or yearName = 1900 then
delete word "29" of field days
end if
end if
put cardID into field launch --The card you started from
push card
do field launch --Go back to where you came from
unlock screen
visual dissolve slow
pop card
end mouseUp
-- part contents for card part 1
----- text -----
by David McGregor v1.4 Oct 16, 1989
-- part contents for card part 2
----- text -----
This helpful aid will give you a look at any month of any year from 1821 through 2100. Simply copy the button and paste it in whatever stack you like. It will be faster if the stack "Calendar" is in the Home card folder. You may also enter special events and birthdays to a particular month, and bring them up by clicking on or the cake.
(p.s. You need Helvetica 18 font and Hypercard version 1.2.1 or later.)
If you think this is a useful utility, it would inspire me if you would send what you think it is worth, (with any suggestions), to me at: Access Services -- P.O. Box 562 -- Chandler, AZ 85244. Or you can leave mail on GEnie for D.McGregor1, or CompuServe at 73627,732.